Data storage systems are arrangements of hardware and software that include one or more storage processors coupled to arrays of non-volatile storage devices, such as magnetic disk drives, electronic flash drives, and/or optical drives, for example. The storage processors service storage requests, arriving from host machines (“hosts”), which specify files or other data elements to be written, read, created, or deleted, for example. Software running on the storage processors manages incoming storage requests and performs various data processing tasks to organize and secure the data elements stored on the non-volatile storage devices.
A common function of data storage systems is to copy data from a source to a destination. The purpose of such copying may be to create a clone (i.e., a complete data copy) of a data object or to migrate a data object, e.g., from one storage pool to another.
A data storage system may store many data objects, and a storage processor in the data storage system may have multiple copies in progress at any given time. The storage processor may perform each copy in a respective copy session. The storage processor may start each copy session, copy the identified data, and end the copy session once copying is complete.